﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ShivamEMR.Model.Domain.PersonDomain;
using ShivamEMR.Model.Domain.CompanyDomain;
using System.ComponentModel.DataAnnotations;

namespace ShivamEMR.Model.Domain.CRMDomain
{
   public class Appointment
    {
        #region Properties
        public int ID { get; set; }
          [DataType(DataType.Date)]
        public DateTime DateAndTime { get; set; }
        public string Occation { get; set; }
        public int Priority { get; set; }
        public string Notes { get; set; }
        #endregion

        #region ForeignKeyProperties
        public Guid EmployeeID { get; set; }
        public int AppointmentGroupID { get; set; }
        public Guid VenueID { get; set; }
        public int AppointmentStatusID { get; set; } 
        #endregion

        #region NavigationalProperties
       [ForeignKey("EmployeeID")]
        public virtual Employee Employee { get; set; }       
       [ForeignKey("AppointmentGroupID")]
       public virtual AppointmentGroup Group { get; set; }
      [ForeignKey("VenueID")]
       public virtual Venue Venue { get; set; }
      [ForeignKey("AppointmentStatusID")]
       public virtual AppointmentStatus Status { get; set; }

      public virtual ICollection<Person> AppointmentWith { get; set; }
        #endregion
    }
}
